// 生成器函数返回值
function* oneAndDone() {
    yield 1
    return "done"
}
// 正常迭代中不会出现返回值
console.log([...oneAndDone()]); // [1]
//在显式调用next可以得到
let generator = oneAndDone()
console.log(generator.next()); // { value: 1, done: false }
console.log(generator.next()); // { value: 'done', done: true }
console.log(generator.next()); // { value: undefined, done: true }


// 生成器意义
//使用生成器在单线程js代码中创建协作线程系统，掩盖程序中异步逻辑，使代码看起来是顺序同步的。管理异步代码，async和await关键字